﻿using BCCommon.Enums;
using BCDto.Website.UserAuth;
using System.Collections.Generic;

namespace BCService.Website.UserAuth
{
    /// <summary>
    /// 信息
    /// </summary>
    public interface IUserAuthService
    {
        #region  成员方法
        /// <summary>
        /// 是否存在此记录
        /// </summary>
        /// <param name="userAuthId">信息Id</param>
        bool Exists(long userAuthId);
        /// <summary>
        /// 添加信息
        /// </summary>
        /// <param name="requestDto">信息信息</param>
        UserAuthDto Add(UserAuthRequestDto requestDto);
        /// <summary>
        /// 更新信息
        /// </summary>
        /// <param name="putDto">信息信息</param>
        UserAuthDto Update(UserAuthPutDto putDto);
        /// <summary>
        /// 删除信息
        /// </summary>
        /// <param name="userAuthId">信息Id</param>
        void Delete(long userAuthId);
        /// <summary>
        /// 获取信息
        /// </summary>
        /// <param name="authType">授权类型</param>
        /// <param name="unionId">授权平台唯一标识</param>
        UserAuthDto Get(AuthType authType ,string unionId);
        /// <summary>
		/// 获取信息列表
		/// </summary>
        /// <param name="userId">用户Id</param>
		IEnumerable<UserAuthDto> GetList(long userId);
        #endregion  成员方法
    }
}